package cn.legend.travel.tour.team.service;

import cn.legend.travel.common.pojo.vo.PageData;
import cn.legend.travel.tour.team.pojo.entity.Tour;
import cn.legend.travel.tour.team.pojo.param.RequestParams;
import cn.legend.travel.tour.team.pojo.param.StoreAddNewParam;
import cn.legend.travel.tour.team.pojo.po.TourPO;
import cn.legend.travel.tour.team.pojo.vo.*;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

public interface ITourService {
    PageData<TourVO> listForGeneral(Integer pageNum);

    PageData<TourVO> listForSaleCount(Integer pageNum);

    PageData<TourVO> listForPriceASC(Integer pageNum);

    PageData<TourVO> listForPriceDesc(Integer pageNum);

    List<TourHotVO> listForHotItem();

    PageData<TourVO> search(RequestParams params);

    PageData<TourSearchVO> search(String keyword,String departure, Integer pageNum);

    PageData<TourSearchVO> searchByType(String type, Integer pageNum);

    void rebuildSearch();

    TourDetailVO getItemByGuideId(Long guideId);
}
